package tarena.netctoss.dao;

import java.util.List;

import tarena.netctoss.po.Pricing;

/**
 * 资费管理模块 对数据库访问部分
 * 
 * @author Wangpeihu
 * @team [Never give up]
 * @since JDK1.6(建议)
 * @date 2010-3-5
 */
public interface PricingDao {

	/**
	 * 保存
	 * 
	 * @param pricing
	 */
	void save(Pricing pricing);

	/**
	 * 删除
	 * 
	 * @param pricing
	 */
	void delete(Pricing pricing);

	/**
	 * 更新
	 * 
	 * @param pricing
	 */
	void update(Pricing pricing);

	/**
	 * 根据ID查找
	 * 
	 * @param id
	 * @return
	 */
	Pricing findById(Integer id);

	/**
	 * 查找所有<br>
	 * 无条件
	 * 
	 * @return
	 */
	List<Pricing> findAll();

	/**
	 * 查询所有<br>
	 * 
	 * @param page
	 *            (分页条件)
	 * @return
	 */
	List<Pricing> findAll(Pagination page);

	/**
	 * 查询所有<br>
	 * 
	 * @param page
	 *            (分页条件)
	 * @param pc
	 *            (资费范围条件)
	 * @return
	 */
	List<Pricing> findAll(Pagination page, PricingCondition pc);

	/**
	 * 加载最大页号
	 * 
	 * @param page
	 *            (分页条件)
	 * @param pc
	 *            (资费范围条件)
	 */
	void loadMaxPage(Pagination page, PricingCondition pc);
}
